# -*- coding: utf-8 -*-
# @Time    : 2023/9/19 15:06
# @Author  : chenyinhua
# @File    : test_login.py
# @Software: PyCharm
# @Desc:

# 标准库导入
# 第三方库导入
# 本地应用/模块导入
from case_utils.base_page import BasePage


class LoginPage(BasePage):

    def input_username_on_pop(self, login):
        """
        弹窗登录：输入用户名
        """

        self.input(locator="xpath=//input[@name='username']", text=login)

    def input_password_on_pop(self, password):
        """
        弹窗登录：输入密码
        """

        self.input(locator="xpath=//input[@name='password']", text=password)

    def input_username_on_page(self, login):
        """
        网页登录：输入用户名
        """

        self.input(locator="id=login_username", text=login)

    def input_password_on_page(self, password):
        """
        网页登录：输入密码
        """

        self.input(locator="id=login_password", text=password)

    def submit_login_on_page(self):
        self.click(locator="xpath=//span[text()='登 录']/..")

    def submit_login_on_pop(self):
        self.click(locator="//div[text()='登录']")

    def login_on_pop(self, login, password):
        """
        弹窗登录：输入用户名，密码，点击登录按钮，提交登录表单
        """
        self.input_username_on_pop(login)
        self.input_password_on_pop(password)
        self.submit_login_on_pop()
        self.page.wait_for_timeout(1000)

    def login_on_page(self, login, password):
        """
        网页登录：输入用户名，密码，点击登录按钮，提交登录表单
        """
        self.input_username_on_page(login)
        self.input_password_on_page(password)
        self.submit_login_on_page()
        self.page.wait_for_timeout(1000)

    def login_popup_show(self):
        self.is_element_visible(locator="//div[@id='log_reg_content']")

    def check_password_wrong_text(self, text):
        """
        检查密码错误的提示：你已经输错密码x次，还剩余x次机会
        """
        self.have_text(locator="xpath=//p[contains(@class, 'message')]", text=text)
